﻿Imports System.Data.SqlClient
Imports UTNComputers.clsEstado_Os

Public Class clsOrden_Servicio_Detalle
    Private mOsdte_Id As Int32
    Private mOs_Id As Int32
    Private mOsdte_Estado As Int32
    Private mDescri As String
    Private mEstado As clsEstado_Os
    Private mCod_Suc As Int32
    Private mConsumos As List(Of clsOrden_Servicio_Consumos)

    '/////////////////////////////////////////////////////////
    '/ Propiedades
    '/////////////////////////////////////////////////////////
    Public Property Osdte_Id() As Int32
        Get
            Return mOsdte_Id
        End Get
        Set(ByVal value As Int32)
            If value > 0 And value < 2000000000 Then
                mOsdte_Id = value
            Else
                Throw New Exception("No se puede utilizar el código de detalle de orden de servicio. El código debe ser mayor a cero (0).")
            End If
        End Set
    End Property
    Public Property Os_Id() As Int32
        Get
            Return mOs_Id
        End Get
        Set(ByVal value As Int32)
            If value > 0 And value < 2000000000 Then
                mOs_Id = value
            Else
                Throw New Exception("No se puede utilizar el código de orden de servicio. El código debe ser mayor a cero (0).")
            End If
        End Set
    End Property
    Public Property Osdte_Estado() As Int32
        Get
            Return mOsdte_Estado
        End Get
        Set(ByVal value As Int32)
            If value > 0 And value < 2000000000 Then
                mOsdte_Estado = value
            Else
                Throw New Exception("No se puede utilizar el código de estado de orden de servicio. El código debe ser mayor a cero (0).")
            End If
        End Set
    End Property
    Public Property Descri() As String
        Get
            Return mDescri.Trim.ToUpper
        End Get
        Set(ByVal value As String)
            mDescri = value.Trim.ToUpper
        End Set
    End Property
    Public Property Estado() As clsEstado_Os
        Get
            Return mEstado
        End Get
        Set(ByVal value As clsEstado_Os)
            mEstado = value
        End Set
    End Property
    Public Property Cod_Suc() As Int32
        Get
            Return mCod_Suc
        End Get
        Set(ByVal value As Int32)
            If value > 0 And value < 2000000000 Then
                mCod_Suc = value
            Else
                Throw New Exception("Codigo de sucursal incorrecto")
            End If
        End Set
    End Property
    Public Property Consumos() As List(Of clsOrden_Servicio_Consumos)
        Get
            Return mConsumos
        End Get
        Set(ByVal value As List(Of clsOrden_Servicio_Consumos))
            mConsumos = value
        End Set
    End Property
    '/////////////////////////////////////////////////////////
    '/ Métodos de la Clase
    '/////////////////////////////////////////////////////////

    '---------------------------------------------------------------------
    ' Constructor de la Clase
    '---------------------------------------------------------------------
    Public Sub New()

        MyBase.New()

    End Sub
    '---------------------------------------------------------------------
    ' Destructor de la Clase
    '---------------------------------------------------------------------
    Public Sub Dispose()

        MyBase.Finalize()

    End Sub

End Class
